1. Field of the Invention
The present invention relates generally to a broadband communication system, and is more particularly related to data transmission from a terminal using a contention protocol.
2. Discussion of the Background
Satellite communications systems have emerged as an accessible and reliable network infrastructure that can support the exchange of voice, video, and data traffic. Conventionally, these satellite communications systems offer dedicated communication channels that relay or tunnel traffic without processing such traffic (i.e., “bent pipe”). That is, the system has no knowledge of what types of protocols are used or data that is contained within the packets. One drawback with these satellite communications systems is that they are highly inefficient with respect to bandwidth allocation. For example, if the satellite has excess transponder bandwidth at a particular time, this excess capacity cannot be temporality reallocated to another satellite terminal (ST). Another drawback is that the satellite cannot perform any processing on the received traffic; thus, key networking functions, such as flow control and congestion control, are not available. Yet another drawback concerns the inflexibility of the system to adapt dynamically to the traffic requirements of the STs.
The maturity of electronic commerce and acceptance of the Internet as a daily tool by millions of users (this user base continues to grow) only intensify the need to develop techniques to streamline capacity usage. With the advances in processing power of desktop computers, the average user has grown accustomed to sophisticated multimedia applications, which place tremendous strain on network resources (e.g., switch capacity). Also, because the decrease in application response times is a direct result of the increased processor performance, the user has grown less tolerant of network delays, demanding comparable improvements in the network infrastructure. Therefore, efficient use of network capacity is imperative, particularly in systems where capacity needs to be managed carefully, such as a satellite network.
Given the bursty nature of Internet traffic, traffic emanating from the STs can vary greatly, thereby making it technically impractical to adjust the static channel assignments of the traditional bent pipe satellite systems.
To support Internet traffic, the satellite communications system must transport TCP (Transmission Control Protocol) traffic. Moreover, the satellite communications system should support networks with a large number of remotes (e.g., homes) that connect to a few central sites (e.g., Internet Service Providers (ISPs) Point of Presence (POP)). In this configuration, the remotes initiate downloads from the central sites. Typically, there exist a large number of remotes, and the probability of any given remote accessing the system at any given time is very low. Thus, these accesses are via contention rather than reserved slots. However, conventionally, once an access is made, a train of small messages are returned from the remote; these messages may include, among other information, TCP synchronization information, TCP acknowledgement information that are required to provide reliable delivery of data, and HTTP (Hyper Text Transfer Protocol) GET messages.
The nature of Internet traffic is such that file sizes are heavily distributed towards the small end; possibly 80% of the downloads over the Internet are less than 10KB. However, the distribution of file sizes also exhibits a heavy tail. As a result, half the download capacity of the system might be used to transfer files greater than 1 MB.
To transport these large files, TCP utilizes segmentation to transfer the file. The receiving TCP node typically sends acknowledgement messages (“acks”) for every second TCP segment that is received. In the case in which Ethernet, for example, is used in a terrestrial subnetwork, TCP segments may be no larger than 1460 bytes. In actuality, the average size may be closer to 1 KB, because some variants of TCP will not use “path MTU (maximum transfer unit) discovery”, resulting in 536 byte segments.
A satellite communications system, thus, must take into account the behavior of TCP traffic to optimize use of communication resources. To address this issue, use of contention channels have been suggested. To allow for reasonable latencies for communication using contention channels (i.e., keeping the collision probability low), typically a large number of contention slots might be provisioned for every one slot that is actually used. In a system where the acknowledgments are sent over contention channels, for every 2 KB of TCP data, 2 KB of effective uplink capacity has to be put aside to return the acknowledgements. The impact of this is that twice the amount of uplink capacity has to be provided at the satellite than what is actually used. Accordingly, conventional systems that employ contention channels use bandwidth resources inefficiently.
Based on the foregoing, there is a clear need for improved approaches for transmitting data over contention channels in a satellite communications system.
There is also a need to enhance efficient utilization of the system capacity.
There is also a need to reduce network latency.
There is a further need to reduce user response time.
Based on the need to improve system efficiency, an approach for utilizing contention channels that account for the behavior of the data traffic is highly desirable.